package com.common.www.bean.entity.programme;


import org.springframework.boot.base.jpa.domain.annotations.QueryCacheable;
import org.springframework.boot.base.jpa.domain.entity.NumberIdentityEntity;
import com.common.www.bean.entity.project.Project;
import com.common.www.bean.entity.project.SupplyCompany;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModel;
import lombok.*;
import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;

import javax.persistence.*;
import java.math.BigDecimal;

/**
 * 清单提取信息
 *
 * @param
 * @author andyliu
 * @date 5/28/2018 4:23 PM
 * @return
 */
@DynamicUpdate(true)
@DynamicInsert(true)
@Entity
@Getter
@Setter
@QueryCacheable
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
@Table()
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "清单提取信息参数")
@JsonIgnoreProperties(ignoreUnknown=true)
public class TabulationExtracting extends NumberIdentityEntity {

    /**
     * 项目
     */
    @JsonIgnoreProperties(value = {""})
    @ManyToOne()
    private Project project;
    /**
     * 供应公司(为标底或实施标底时无公司)
     */
    @JsonIgnoreProperties(value = {""})
    @ManyToOne()
    private SupplyCompany supplyCompany;
    /**
     * 税率
     */
    @Column(length = 11, precision = 12, scale = 4)
    private BigDecimal shuiLv;
    /**
     * 含税报价
     */
    @Column(length = 11, precision = 12, scale = 4)
    private BigDecimal hsBaoJia;
    /**
     * 不含税报价
     */
    @Column(length = 11, precision = 12, scale = 4)
    private BigDecimal bhsBaoJia;
    /**
     * 含税修正报价
     */
    @Column(length = 11, precision = 12, scale = 4)
    private BigDecimal hsxzBaoJia;
    /**
     * 内线或外线信息；1.内线 2.外线
     */
    @Column(length = 11)
    private Integer innerOuterType;
    /**
     * 参加阶段；1.标底 2.回标1 3.回标2 4.回标3 5.回标4 6.定标 7.实施标底 8.实施定标
     */
    @Column(length = 11)
    private Integer jieDuan;


}